
package msu.ml.gis;

import msu.ml.data.*;
import java.util.*;
import java.io.*;

public abstract class Shape implements IShape
{
   private ArrayList<DBFAttribute> attributes;

   public Shape()
   {
      this.attributes = new ArrayList<DBFAttribute>();
   }

   public void addAttribute(DBFAttribute attribute)
   {
      this.attributes.add(attribute);
   }

   public ArrayList<DBFAttribute> getAttributes()
   {
      return this.attributes;
   }

   public abstract java.awt.geom.Rectangle2D getBoundingBox();

   public abstract int getContentLength();

   public abstract int getShapeType();

   public abstract void serialize(LittleEndianDataOutputStream out) throws IOException;

}
